package cn.com.headfree.sysmenu.entity;

import com.gta.edu.sdk.mybatis.common.Entity;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 统菜单表
 */
public class TSysMenu extends Entity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private String id;

    /**
     * 父菜单ID
     */
    private String parentId;

    /**
     * 菜单名称
     */
    private String menuName;

    /**
     * 菜单代码
     */
    private String menuCode;

    /**
     * 类型，M0001：菜单，G0001：按钮
     */
    private String type;

    /**
     * 菜单类容，如url等
     */
    private String conent;

    /**
     * 菜单ID路径
     */
    private String pathId;

    /**
     * 菜单名称路径
     */
    private String pathName;

    /**
     * 是否受控，Y:受控，N:不受控
     */
    private String isCtrl;

    /**
     * 序号
     */
    private Integer seqNumber;

    /**
     * 状态，Y:启用，N:停用
     */
    private String status;

    /**
     * 根资源ID
     */
    private String resId;

    /**
     * 应用ID
     */
    private String appId;

    /**
     * 业务域ID
     */
    private String domainId;

    /**
     * 创建时间
     */
    private Date createTime;

    /** 子菜单 */
    private List<TSysMenu> children = new ArrayList<TSysMenu>();

    public TSysMenu(String id, String parentId, String menuName, String menuCode, String type, String conent, String pathId, String pathName, String isCtrl, Integer seqNumber, String status, String resId, String appId, String domainId, Date createTime) {
        this.id = id;
        this.parentId = parentId;
        this.menuName = menuName;
        this.menuCode = menuCode;
        this.type = type;
        this.conent = conent;
        this.pathId = pathId;
        this.pathName = pathName;
        this.isCtrl = isCtrl;
        this.seqNumber = seqNumber;
        this.status = status;
        this.resId = resId;
        this.appId = appId;
        this.domainId = domainId;
        this.createTime = createTime;
    }

    public TSysMenu() {
        super();
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public String getMenuName() {
        return menuName;
    }

    public void setMenuName(String menuName) {
        this.menuName = menuName;
    }

    public String getMenuCode() {
        return menuCode;
    }

    public void setMenuCode(String menuCode) {
        this.menuCode = menuCode;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public String getConent() {
        return conent;
    }

    public void setConent(String conent) {
        this.conent = conent;
    }

    public String getPathId() {
        return pathId;
    }

    public void setPathId(String pathId) {
        this.pathId = pathId;
    }

    public String getPathName() {
        return pathName;
    }

    public void setPathName(String pathName) {
        this.pathName = pathName;
    }

    public String getIsCtrl() {
        return isCtrl;
    }

    public void setIsCtrl(String isCtrl) {
        this.isCtrl = isCtrl;
    }

    public Integer getSeqNumber() {
        return seqNumber;
    }

    public void setSeqNumber(Integer seqNumber) {
        this.seqNumber = seqNumber;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getResId() {
        return resId;
    }

    public void setResId(String resId) {
        this.resId = resId;
    }

    public String getAppId() {
        return appId;
    }

    public void setAppId(String appId) {
        this.appId = appId;
    }

    public String getDomainId() {
        return domainId;
    }

    public void setDomainId(String domainId) {
        this.domainId = domainId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public List<TSysMenu> getChildren()
    {
        return children;
    }

    public void setChildren(List<TSysMenu> children)
    {
        this.children = children;
    }
}
